How to serve QuickTime movies
Serving QuickTime movies from a Mac running MacHTTP is really no different than serving
any other binary document (such as GIF or JPEG files) with one exception. The movie data
must be in a proper, flattened format.
There are 3 steps to serving up QuickTime movies:
- Configure the Server
- Configure the Client
- Create a flattened movie
Configuring the Server
You need to have version 1.2.4 of MacHTTP or later. MIME type support provided in this
version is essential to getting
MacHTTP to properly serve QuickTime movies to WWW clients. However, using the
current beta is highly recommended for performance
reasons. Version 1.2.4 was the last version of MacHTTP that still performed file
transfers one at a time. For large movies this causes unnecessary client delays. Newer
versions support multiple, parallel file transfers.
MacHTTP 1.2.4 or greater should have the following line in the MacHTTP.config file:
BINARY .MOV MooV * video/quicktime
This tells MacHTTP to send all files with a suffix of ".mov" or a file type of "MooV"
as a binary file with the MIME type of "video/quicktime". Note that your WWW client must
define a viewer for documents of type "video/quicktime" as well. Mac Mosaic defaults to
using Apple's "Simple Player" application.
Configuring the Client
Assuming that you are using a recent version of Mac Mosaic, all that is required is to
have a copy of the appropriate "helper application" installed with Mosaic. Mosaic will
automatically download the movie from MacHTTP and launch the correct viewer.
If you are using a WWW client on Unix or Windows, you will need the appropriate
QuickTime viewer for these hosts.
Creating a "flattened" movie
Many Quicktime movie creation tools create a movie document that may reference other movie
segments or rely on informations stored in the resource fork of the movie file. Because
the HTTP protocol doesn't provide support for transmitting multi-fork files, you must
make sure that all of your movie data is contained within the data fork of the movie.
This is required for the movies to play on Unix and MS Windows. Even if you don't use
MacHTTP to serve the documents, you'll have to flatten the movie. "Flattening" involves
combining all resources, sound, and video that comprise a QuickTime movie into the data
fork of the movie file. There are several tools that will perform this operation. One is
MCPlayMovie, which is part of the Apple sample source code from ftp.apple.com.,
Flattmoov,
Movie Converter, and newer versions of Adobe Premiere will also flatten movies.
Examples
Once you have a flattened movie, you may serve it just like any other binary document.
Here is an example of a QuickTime movie being served from a
Unix-based WWW server (httpd). Note that this particular movie has no audio track.
Audio tracks in movies will play fine if present.
Here is another example of the same
movie being served by MacHTTP running on a Mac IIci. Note: This Mac may be off the
air for other uses on rare occasions, so please understand if the movie can't be accessed.